// 页面加载时，获取歌曲列表
$(document).ready(function() {
    var context = getContextPath();
    var startIndex = 0;  // 默认歌曲列表起始查询页码
    var targetTotal = 5;  // 默认歌曲列表页码条数
    $.ajax({
        url: context + "/song/getSongList" + "?startIndex=" + startIndex + "&targetTotal=" + targetTotal,
        method: "GET",
        error: function() {
            alert('请求失败，请稍后重试');
        }
    });
});

// 监听全选复选框的变化
$('#selectAll').on('change', function () {
    var isChecked = $(this).prop('checked');
    // 更新所有单选框的状态
    $('.songCheckbox').prop('checked', isChecked);
});

// 监听单选框的变化，更新全选框的状态
$('.songCheckbox').on('change', function () {
    var allChecked = $('.songCheckbox').length === $('.songCheckbox:checked').length;
    $('#selectAll').prop('checked', allChecked);
});

// 监听添加到播放列表按钮
$('#addToPlaylist').on('click', function () {
    var selectedSongs = [];
    var requesterId = $(this).data('user-id');

    // 收集选中的歌曲 ID
    $('.songCheckbox:checked').each(function () {
        selectedSongs.push($(this).data('song-id'));
    });

    if (!requesterId) {
        alert('请先登录');
        window.location.href = getContextPath() + '/user/login.jsp';
        return;
    }

    if (selectedSongs.length === 0) {
        alert('请至少选择一首歌曲');
        return;
    }

    // 发送请求，将选中的歌曲添加到播放列表
    $.ajax({
        url: getContextPath() + '/play/addToPlaylist', // 请求的 URL，按实际情况修改
        type: 'POST',
        dataType: 'json',
        contentType: 'application/json', // 确保发送的是 JSON 数据
        data: JSON.stringify({ songIds: selectedSongs }), // 构建 JSON 数据
        success: function (response) {
            if (response.code === 1) {
                alert('成功添加到播放列表');
                // 跳转到播放列表页面
                window.location.href = getContextPath() + '/playlists/playlists.jsp';
            } else {
                alert('添加到播放列表失败');
            }
        },
        error: function () {
            alert('请求失败，请稍后再试');
        }
    });
});

// 监听分享按钮
$('.share-btn').on('click', function () {
    var songId = $(this).data('song-id');
    var requesterId = $(this).data('user-id');
    if (requesterId === "") {
        alert('请先登录');
        window.location.href = getContextPath() + '/user/login.jsp';
        return;
    }
    // 设置模态框中的值
    $('#requesterId').val(requesterId);
    $('#songId').val(songId);

    // 显示模态框
    $('#shareModal').modal('show');
});

// 监听模态框中的分享按钮
$('#sendShareRequest').on('click', function () {
    var context = getContextPath();
    var requesterId = $('#requesterId').val();
    var songId = $('#songId').val();
    var recipientId = $('#recipientId').val();

    // if (requesterId === "") {
    //     // 为啥乱码了
    //     alert('请先登录');
    //     window.location.href = getContextPath() + '/user/login.jsp';
    //     return;
    // }

    // 发送请求到后端
    $.ajax({
        url: context + '/song/sendSongServlet',
        type: 'POST',
        contentType: 'application/json',
        data: JSON.stringify({
            requesterId: requesterId,
            songId: songId,
            recipientId: recipientId
        }),
        success: function (response) {
            if (response.code === 1) {
                // 为啥会乱码！！！
                alert('success');
                $('#shareModal').modal('hide');
            } else {
                alert('error: ' + response.message);
            }
        },
        error: function () {
            alert('error');
        }
    });
});


